﻿#define _CRT_SECURE_NO_WARNINGS 1
#include <stdio.h>

//输⼊任意⼀个整数值，计算除3之后的余数
//int main()
//{
//	int n = 0;
//	scanf("%d", &n);
//
//	if (n % 3 == 0)
//		printf("余数是0\n");
//	else if (n % 3 == 1)
//		printf("余数是1\n");
//	else
//		printf("余数是2\n");
//	return 0;	
//}
//int main()
//{
//	int n = 0;
//	scanf("%d", &n);
//	switch (n%3)
//	{
//	case 0:
//			printf("余数是0\n");
//			break;
//		case 1:
//			printf("余数是1\n");
//			break;
//		case 2:
//			printf("余数是2\n");
//			break;
//	}
//
//	return 0;
//}
//int main()
//{
//	int day = 0;
//	scanf("%d", &day);
//	switch (day)
//	{
//	case 1:
//		printf("星期一\n");
//		break;
//	case 2:		
//		printf("星期二\n");
//		break;
//	case 3:
//		printf("星期三\n");
//		break;
//	case 4:	
//		printf("星期四\n");
//		break;
//	case 5:
//		printf("星期五\n");
//		break;
//	case 6:
//		printf("星期六\n");
//		break;
//	case 7:
//		printf("星期天\n");
//		break;
//	}
//	return 0;
//}
//int main()
//{
//	int day = 0;
//	scanf("%d", &day);
//	switch (day)
//	{
//	case 1:
//		printf("工作日\n");
//		break;
//	case 2:		
//		printf("工作日\n");
//		break;
//	case 3:
//		printf("工作日\n");
//		break;
//	case 4:	
//		printf("工作日\n");
//		break;
//	case 5:
//		printf("工作日\n");
//		break;
//	case 6:
//		printf("休息日\n");
//		break;
//	case 7:
//		printf("休息日\n");
//		break;
//	}
//	return 0;
//}
//int main()
//{
//	int day = 0;
//	scanf("%d", &day);
//	switch (day)
//	{
//	case 1:
//	case 2:
//	case 3:	
//	case 4:
//	case 5:
//		printf("工作日\n");
//		break;
//	case 6:
//	case 7:
//		printf("休息日\n");
//		break;
//	}
//	return 0;
//}
//int main()
//{
//	int day = 0;
//	scanf("%d", &day);
//	switch (day)
//	{
//	case 1:
//		printf("工作日\n");
//		break;
//	case 2:
//		printf("工作日\n");
//		break;
//	case 3:
//		printf("工作日\n");
//		break;
//	case 4:
//		printf("工作日\n");
//		break;
//	case 5:
//		printf("工作日\n");
//		break;
//	case 6:
//		printf("休息日\n");
//		break;
//	case 7:
//		printf("休息日\n");
//		break;
//	default:
//		printf("输入错误\n");
//		break;
//	}
//	return 0;
//}
//int main()
//{
//	int n = 3;
//	/*if(n)*/
//	while (n)//死循环
//		printf("Hehe\n");
//	
//	return 0;
//}
//int main()
//{
//	int n = 3;
//	/*if(n)*/
//	while (n)//死循环
//		printf("Hehe\n");
//
//	return 0;
//}
//int main()
//{
//	int n = 1;
//	while (n <= 10)
//	{
//		printf("%d", n);
//		n++;
//	}
//	return 0;
//}
//输⼊⼀个正的整数，逆序打印这个整数的每⼀位
//例如：
//输⼊：1234，输出：4321
//int main()
//{
//	int n = 0;
//	scanf("%d", &n);
//
//	while (n)
//	{
//		printf("%d", n % 10);
//		n = n / 10;
//	}
//	return 0;
//}
//int main()
//{
//	int i = 0;
//	for (i = 1; i <= 10; i++)
//	{
//		printf("%d", i);
//	}
//	return 0;
//	//int i = 1;
//	//while(i<=10)
//	//	printf("%d", i);
//	//	i++;
//	//return 0;
//}
//计算1~100之间3的倍数的数字之和
//int main()
//{
//	int i = 0;
//	int sum = 0;
//	//for (i = 1;i <= 100; i++)
//	//{
//	//	if (i % 3 == 0)
//	//	{
//	//		/*sum = sum + i;*/
//	//		sum += i;
//	//		
//	//	}
//	//	printf("sum = %d\n", sum);
//	//}
//	for (i = 1;i <= 100; i+=3)
//	{
//		sum += i;
//	}
//	printf("sum = %d\n", sum);
//	return 0;
//}
//int main()
//{
//	int n = 1;
//	do
//	{
//		printf("%d", n);
//		n++;
//	} while (n <= 10);
//
//	return 0;
//}
//输⼊⼀个正整数，计算这个整数是⼏位数
//int main()
//{
//	int i = 0;
//	int cnt = 0;
//	scanf("%d", &i);
//	do
//	{
//		cnt++;
//		i = i / 10;
//	} while (i);
//	printf("%d\n", cnt);
//	return 0;
//}

//int main()
//{
//	int i = 1;
//	while (i <= 10)
//	{
//		if (i == 5)
//			continue;
//			/*break;*/
//		printf("%d\n", i);
//		i++;
//	}
//	
//	return 0;
//}
//int main()
//{
//	int i = 1;
//	do
//	{
//		if (i == 5)
//			continue;
//		printf("%d\n", i);
//		i++;
//	} while (i <= 10);
//	return 0;
////}
//int main()
//{
//	int i = 0;
//	do
//	{
//		i++;
//		if (i==5)
//			continue;
//		printf("%d\n", i);
//	} while (i <= 10);
//	return 0;
//}
//找出100~200之间的素数，并打印在屏幕上。
// 注：素数⼜称质数，只能被1和本⾝整除的数字。
//int main()
//{
//	int i = 0;
//	for (i = 100;i<=200;i++)
//	{
//		int flag = 1;//假设i是素数
//		int j = 0;
//		for (j = 2;j <= i - 1;j++)
//		{
//			if (i % j == 0)
//			{
//				flag = 0;//i不是素数
//				break;
//			}
//		}
//		if (flag == 1)
//			printf("%d ", i);
//	}
//	return 0;
//}
//int main()
//{
//
//	printf("hehe\n");
//	goto next;
//	printf("haha\n");
//next:
//	printf("heihei\n");
//	return 0;
//}
//int main()
//{
//next:
//	printf("hehe\n");
//	printf("haha\n");
//	goto next;
//	return 0;
//}
//int main()
//{
//	int x = 3;
//	int y = 3;
//	switch (x % 2) {
//	case 1:
//		switch (y)
//		{
//		case 0:
//			printf("first");
//		case 1:
//			printf("second");
//			break;
//		default: printf("hello");
//		}
//	case 2:
//		printf("third");
//	}
//	return 0;
//}
//int main()
//{
//	int a = 0, b = 0;
//	for (a = 1, b = 1; a <= 100; a++)
//	{
//		if (b >= 20) break;
//		if (b % 3 == 1)
//		{
//			b = b + 3;
//			continue;
//		}
//		b = b - 5;
//	}
//	printf("%d\n", a);
//	return 0;
//}
//九九乘法表
//int main()
//{
//	int i = 0;
//	//控制行数
//	for (i = 1; i <= 9; i++)
//	{
//		//打印每一行内容，每行有i个表达式
//		int j = 0;
//		for (j = 1; j <= i; j++)
//		{
//			printf("%d*%d=%2d ", i, j, i * j);
//		}
//		printf("\n");
//	}
//	return 0;
//}
//闰年
//int main()
//{
//	int year = 0;
//	for (year = 1000; year <= 2000; year++)
//	{
//		if (((year % 4 == 0) && (year % 100 != 0)) || (year % 400 == 0))
//		{
//			printf("%d ", year);
//		}
//	}
//
//	return 0;
//}
//最大公约数
int main()
{
	int a = 18;
	int b = 24;
	int c = 0;

	while (c = a % b)
	{
		a = b;
		b = c;
	}

	printf("%d\n", b);
	return 0;
}